package com.hskn.hss.module.employeePunchCard.entity;

import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 *
 * </p>
 *
 * @author hskn
 * @since 2021-05-21
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class EmployeePunchCard implements Serializable {

    private static final long serialVersionUID = 1L;

    private String id;
    /**
     * 人员id
     */
    private String employeeId;
    /**
     * 人员名称
     */
    private String employeeName;
    /**
     * 机构ID
     */
    private String departmentId;
    /**
     * 机构名称
     */
    private String departmentName;
    /**
     * 打卡日期
     */
    private String punchCardDate;
    /**
     * 打卡月份
     */
    private String punchCardMonth;
    /**
     * 规定上班时间
     */
    private String workTime;
    /**
     * 规定下班时间
     */
    private String afterWorkTime;
    /**
     * 实际上班时间
     */
    private String actualWorkTime;
    /**
     * 实际下班时间
     */
    private String actualAfterWorkTime;
    /**
     * 允许提前打卡规定(上班前多少分钟算正常)
     */
    private Integer startWorkPunchCardProvision;
    /**
     * 允许延后打卡规定(下班后多少分钟打卡算正常)
     */
    private Integer endWorkPunchCardProvision;
    /**
     * 迟到规定(上班后多少分钟打卡算迟到)
     */
    private Integer laterInProvision;
    /**
     * 早退规定(下班多少分钟前打卡算早退)
     */
    private Integer leaveEarlyProvision;
    /**
     * 旷工规定(未工作时长达多少分钟算旷工)
     */
    private Integer noWorkProvision;
    /**
     * 迟到(0 未迟到 1 迟到)
     */
    private Integer laterIn;  // 0 正常  1早退
    /**
     * 早退(0 未早退 1 早退)
     */
    private Integer leaveEarly;
    /**
     * 旷工(0 未旷工 1 旷工)
     */
    private Integer noWork;
    /**
     * 缺卡(0 正常 1 缺卡)
     */
    private Integer lackCard;
    /**
     * 电子围栏iD
     */
    private String gridId;
    /**
     * 考勤打卡类型(0 设备 1 app)
     */
    private Integer type;
    /**
     * 人：emp，车：car
     */
    private String manCarType;
    /**
     * 人员车辆考勤状态id
     */
    private String gridBindCheckworkId;
    /**
     * 创建时间
     */
    private Date creatTime;

}
